{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 22,
   "id": "1ff462c8",
   "metadata": {},
   "outputs": [],
   "source": [
    "import tushare as ts\n",
    "import pandas as pd\n",
    "from dateutil.parser import parse\n",
    "\n",
    "from scipy import stats\n",
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "plt.rcParams['font.sans-serif'] = ['SimHei']\n",
    "plt.rcParams['axes.unicode_minus']=False # 负号问题\n",
    "pd.options.mode.chained_assignment = None\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "1c4d467c",
   "metadata": {},
   "outputs": [],
   "source": [
    "def get_df(tscode,startdate = '20210101', enddate = '20220520'):\n",
    "    pro = ts.pro_api(\"0ba8feef618e5db7b1ebb65538fe51e4aef69fb3cbf709d44128f313\")\n",
    "    def init_df(df):\n",
    "        df['trade_date']= df['trade_date'].apply(parse)\n",
    "        df = df.set_index('trade_date')\n",
    "        return df['close']\n",
    "    \n",
    "    return init_df( pro.query(\"fut_daily\", ts_code=tscode, start_date=startdate, end_date=enddate))\n",
    "\n",
    "def get_dest_df(df1, df2):\n",
    "    # df_dest = pd.concat([df1, df2], axis=1)\n",
    "    df_dest = pd.merge(df1,df2, on='trade_date', how='left')\n",
    "    df_dest['x_return'] =(df_dest['close_x'] - df_dest['close_x'].shift(1)) / df_dest['close_x'].shift(1)\n",
    "    df_dest['y_return'] =(df_dest['close_y'] - df_dest['close_y'].shift(1)) / df_dest['close_y'].shift(1)\n",
    "\n",
    "    return df_dest\n",
    "\n",
    "def get_corr(df_all):\n",
    "    return df_all.x_return.corr(df_all.y_return)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "id": "ac87d386",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0.9611022144514464\n"
     ]
    }
   ],
   "source": [
    "code1 = \"rb2209.SHF\"\n",
    "# code2=\"SM2209.ZCE\"\n",
    "code2=\"rb2205.SHF\"\n",
    "\n",
    "df1= get_df(code1)\n",
    "# print(df1.head(1))\n",
    "df2 = get_df(code2)\n",
    "\n",
    "if len(df1) == 0 or len(df1) == 0 :\n",
    "    print(\"没有获取到数据\")\n",
    "\n",
    "\n",
    "# df_dest = pd.concat([df1, df2], axis=1)\n",
    "# print(df_dest.head(1))\n",
    "\n",
    "df_all = get_dest_df(df1=df1, df2=df2)\n",
    "# print(df_all.head(1))\n",
    "\n",
    "print(get_corr(df_all=df_all))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "id": "87414dea",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>close_x</th>\n",
       "      <th>close_y</th>\n",
       "      <th>x_return</th>\n",
       "      <th>y_return</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>trade_date</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>2022-05-12</th>\n",
       "      <td>4633.0</td>\n",
       "      <td>5010.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2022-05-11</th>\n",
       "      <td>4723.0</td>\n",
       "      <td>5053.0</td>\n",
       "      <td>0.019426</td>\n",
       "      <td>0.008583</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2022-05-10</th>\n",
       "      <td>4628.0</td>\n",
       "      <td>5096.0</td>\n",
       "      <td>-0.020114</td>\n",
       "      <td>0.008510</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2022-05-09</th>\n",
       "      <td>4686.0</td>\n",
       "      <td>5111.0</td>\n",
       "      <td>0.012532</td>\n",
       "      <td>0.002943</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2022-05-06</th>\n",
       "      <td>4762.0</td>\n",
       "      <td>5082.0</td>\n",
       "      <td>0.016219</td>\n",
       "      <td>-0.005674</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>...</th>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2021-09-24</th>\n",
       "      <td>5027.0</td>\n",
       "      <td>5117.0</td>\n",
       "      <td>-0.010043</td>\n",
       "      <td>-0.013685</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2021-09-23</th>\n",
       "      <td>5050.0</td>\n",
       "      <td>5216.0</td>\n",
       "      <td>0.004575</td>\n",
       "      <td>0.019347</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2021-09-22</th>\n",
       "      <td>4994.0</td>\n",
       "      <td>5170.0</td>\n",
       "      <td>-0.011089</td>\n",
       "      <td>-0.008819</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2021-09-17</th>\n",
       "      <td>4968.0</td>\n",
       "      <td>5064.0</td>\n",
       "      <td>-0.005206</td>\n",
       "      <td>-0.020503</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2021-09-16</th>\n",
       "      <td>5100.0</td>\n",
       "      <td>5192.0</td>\n",
       "      <td>0.026570</td>\n",
       "      <td>0.025276</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>153 rows × 4 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "            close_x  close_y  x_return  y_return\n",
       "trade_date                                      \n",
       "2022-05-12   4633.0   5010.0       NaN       NaN\n",
       "2022-05-11   4723.0   5053.0  0.019426  0.008583\n",
       "2022-05-10   4628.0   5096.0 -0.020114  0.008510\n",
       "2022-05-09   4686.0   5111.0  0.012532  0.002943\n",
       "2022-05-06   4762.0   5082.0  0.016219 -0.005674\n",
       "...             ...      ...       ...       ...\n",
       "2021-09-24   5027.0   5117.0 -0.010043 -0.013685\n",
       "2021-09-23   5050.0   5216.0  0.004575  0.019347\n",
       "2021-09-22   4994.0   5170.0 -0.011089 -0.008819\n",
       "2021-09-17   4968.0   5064.0 -0.005206 -0.020503\n",
       "2021-09-16   5100.0   5192.0  0.026570  0.025276\n",
       "\n",
       "[153 rows x 4 columns]"
      ]
     },
     "execution_count": 17,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df_all"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "id": "8ff8ec04",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[<AxesSubplot:title={'center':'close_x'}>,\n",
       "        <AxesSubplot:title={'center':'close_y'}>],\n",
       "       [<AxesSubplot:title={'center':'x_return'}>,\n",
       "        <AxesSubplot:title={'center':'y_return'}>]], dtype=object)"
      ]
     },
     "execution_count": 18,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 4 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "df_all.hist()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "id": "19db49d1",
   "metadata": {},
   "outputs": [],
   "source": [
    "xret = df_all['x_return']\n",
    "\n",
    "sigma = xret.std()\n",
    "mu = xret.mean()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "id": "b27a42f1",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<AxesSubplot:>"
      ]
     },
     "execution_count": 32,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(np.arange(-0.06, 0.062, 0.002), stats.norm.pdf(np.arange(-0.06, 0.062, 0.002), mu, sigma))\n",
    "xret.hist()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "id": "d102f1c6",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.02020726770441512"
      ]
     },
     "execution_count": 34,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "sigma"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 38,
   "id": "20ce71a2",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(-0.002404395430865193, 0.004072375558926422)"
      ]
     },
     "execution_count": 38,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#  进行区间估计, 置信度为0.95时的置信区间\n",
    "xret=xret.dropna()\n",
    "stats.t.interval(0.95, len(xret) -1, mu, stats.sem(xret))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 41,
   "id": "b473173a",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<AxesSubplot:xlabel='trade_date'>"
      ]
     },
     "execution_count": 41,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "xret.plot()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 43,
   "id": "c3dffdd8",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<AxesSubplot:xlabel='trade_date'>"
      ]
     },
     "execution_count": 43,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 累积收益率\n",
    "((1+xret).cumprod() - 1).plot()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "72439b23",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "trader",
   "language": "python",
   "name": "trader"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.10.0"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
